"""
同时迭代多个序列

问题：
    你想同时迭代多个序列，每次分别从一个序列中取一个元素。
解决方案：
    为了同时迭代多个序列，使用 zip() 函数
"""

from itertools import zip_longest


def use_zip():
    no_list = [1, 2, 3]
    user_list = ["Kevin", "葛小伦", "天使彦", "蔷薇"]
    for no, user in zip(no_list, user_list):
        print(no, user)
    # 输出结果（以最小长度的为准）：
    """
    1 Kevin
    2 葛小伦
    3 天使彦
    """


def use_zip_longest():
    no_list = [1, 2, 3]
    user_list = ["Kevin", "葛小伦", "天使彦", "蔷薇"]
    for no, user in zip_longest(no_list, user_list):
        print(no, user)
    # 输出结果（以最长长度的为准）：
    """
    1 Kevin
    2 葛小伦
    3 天使彦
    None 蔷薇
    """


if __name__ == '__main__':
    use_zip()
    use_zip_longest()
